User specific options and customization of products continues to be of increasing importance in the art of color management technology. Color management is the process of ensuring that color recorded by one device is represented as faithfully as possible to the human eye on a different device. The sensor of an imaging device will have, when compared to the human eye, a limited ability to capture all the color and dynamic range that the human eye can. The same problem occurs on both display devices and output devices. The problem is that while each of imaging, input and output devices have these color and dynamic range limitations, none of them will have limitations in exactly the same way. Therefore conversion rules must be set up to preserve as much of the already limited color and dynamic range information as possible, as well as ensure that the information appears as realistic as possible to the human eye, as it moves through the workflow.
With the differences between source and destination color spaces, colors that are present in the source color space which are not reproducible in the destination color space are referred to as out-of-gamut colors. In response to these out-of-gamut colors, the International Color Consortium (ICC) developed a profile specification that includes four different methods for processing out-of-gamut colors. A method for processing out-of-gamut colors is commonly known by one skilled in the art as a rendering intent or a gamut mapping algorithm. The four ICC profile specification rendering intents are 1) perceptual, 2) saturation, 3) relative colorimetric, and 4) absolute colorimetric. A perceptual rendering intent seeks to preserve the overall appearance of the image. A saturation rendering intent seeks to produce vivid colors and is often utilized for business graphics scenarios. A relative colorimetric rendering intent seeks accurate reproduction, relative to a white point. An absolute colorimetric rendering intent seeks a measurement accurate appearance. A detailed explanation of each type of rendering intent can be found on pages 88-92 of Fraser et al., Real World Color Management, Peachpit Press, Berkeley, Calif., 2003.
Most advanced or profile based color management solutions are based on the ICC profile specification. The ICC profile specification includes broad, textual definitions for the different rendering intents. However, the rendering intents of the ICC profile specification do not include reference limitations. Further, the ICC rendering intents are not based upon any mathematical equations. As such, a vendor interprets and implements the rendering intents differently. For example, various vendor applications can perform a perceptual rendering intent. Yet, the resulting appearance of an image will be different for each application since each vendor application can perform a perceptual rendering intent as the vendor so chooses. Such a specification of rendering intents lacks uniformity between various vendors.
Another consequence of the ICC profile specification is the effect on subjective solutions that a user may wish to apply to his/her workflow. The ICC profile specification combines objective intra-device measurements with the subjective inter-device gamut mapping functions. As such, a user cannot apply his/her subjective solutions in an efficient and/or interactive manner. Vendors have begun to include profiling tools for allowing a user to control certain parameters of a rendering intent or gamut mapping algorithm. The MonacoPROFILER 4.5 by Monaco Systems, Inc. of Andover, Mass. and the Heidelberg PrintOpen 4.5 by Heidelberg USA, Inc. of Kennesaw, Ga. are two examples of such a profiling tool. A user has limited and confined parameters that can be changed. The parameters are limited to certain parameters, such as the contrast or saturation of the colors, and the parameters are confined, i.e., a user cannot change the actual parameters to be controlled. A user cannot construct user interface elements to control parameters in a desired format. If the vendor provides a contrast user interface element, the user is confined to a linear input for the contrast parameter from a minimum value to a maximum value. A user cannot change the form of the contrast, such as a non-linear input, e.g., exponential input.
Conventional color management applications require a user to build and save a profile before applying it to an image. A user must exit a color management application prior to applying his/her parameter choices to an image. If the resulting image is not the desired resulting image, a user must enter the color management application again, apply new settings to the corresponding parameter, exit the application and apply the parameter choices to the image again. A user is left to guess and hope that his/her parameter choices, when applied to an input image, will provide a desired resulting image. A user cannot see a multi-dimensional representation of the source and destination device color gamuts in order to allow for easier, more efficient control over color management functions.